/*
Buffer的创建
*/
//1.alloc
let buf = Buffer.alloc(10);  //alloc->分配  （会清空旧的数据）
// console.log(buf);


//2.allocUnsafe
let buf_2 = Buffer.allocUnsafe(100); //allocUnsafe 不安全，可能会包含旧的内存数据,但是会比alloc创建方式快；
// console.log(buf_2);


//3.from   会转成二进制，也可以把数组转成二进制存道Buffer当中
let buf_3 = Buffer.from('hello');
let buf_4 = Buffer.from([105,108,111,118,101,121,111,117]);
// console.log(buf_3);
// console.log(buf_4);

/*
Buffer 的操作
*/ 
//1.Buffer 与字符串的转换
// console.log(buf_4,'------',buf_4.toString());  //默认 UTF-8 的编码方式转换

//2.Buffer 读写  ->类似于数组 可以用下标的方式来取值


// let nowBuf = Buffer.from('hello');
// console.log(nowBuf)
// console.log(nowBuf[0]);//十进制
// console.log(nowBuf[0].toString(2)); //二进制   注意：这里的toString 是进制的转换，而不是字符串的转换  （所属的对象不同，作用也不同）
// nowBuf[0] = 95;//修改
// console.log(nowBuf,nowBuf.toString());

//溢出
// let nowBuf = Buffer.from('hello');
// nowBuf[0] = 361; //十进制最大255   大于后会舍弃高位的数字   0001 0110 1001=>保存时候 0110 1001
// console.log(nowBuf);

//中文 中文是按照UTF-8的格式，一个中文占三个字节
let nowBuf = Buffer.from('你好');  
console.log(nowBuf)